import pinia from '@/store/index.js'
import useUserStore from '@/store/modules/useUser.js'

/* 因为我们是要在全局注册的,所以需要引入pinia,不然我们没法拿到仓库的数据的. */
const userStore = useUserStore(pinia)

export const isHasButton = (app) => {
  /* 使用全局组件的app的directive方法,我们编译全局自定义指令 */
  app.directive('has', {
    //代表使用这个全局自定义指令的DOM|组件挂载完毕的时候会执行一次
    mounted(el, binding, vnode) {
      //自定义指令右侧的数值:如果在用户信息buttons数组当中没有
      //从DOM树上干掉

      if (!userStore.buttons.includes(binding.value)) {
        el.parentNode.removeChild(el)
      }
    }
  })
}
